يک کد مرتب سازی ليست پيوندی در پاسکال به ترتيب حروف الفبا رو می زارم اينجا تا ازش استفاده کنين شايد به دردتون بخوره :
procedure product_al;
var f2:text ; t:ptr;
begin
q:=first; p:=q^.link;
while(q<>nil)do
begin
while (p<>nil)do
begin
s:=(q^.data).name; c:=(p^.data).name;
if ( ord(s[1]) > ord(c[1]) )then
begin
(temp^.data).name:=(q^.data).name;
(temp^.data).family:=(q^.data).family;
(temp^.data).sal:=(q^.data).sal;
(temp^.data).ta:=(q^.data).ta;
(temp^.data).payrol:=(q^.data).payrol;
(q^.data).name:=(p^.data).name;
(q^.data).family:=(p^.data).family;
(q^.data).sal:=(p^.data).sal;
(q^.data).ta:=(p^.data).ta;
(q^.data).payrol:=(p^.data).payrol;
(p^.data).name:=(temp^.data).name;
(p^.data).family:=(temp^.data).family;
(p^.data).sal:=(temp^.data).sal;
(p^.data).ta:=(temp^.data).ta;
(p^.data).payrol:=(temp^.data).payrol;
end;
